{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "c119242a-6160-4a85-a4fd-bbc51bb38538",
   "metadata": {},
   "outputs": [
    {
     "ename": "TypeError",
     "evalue": "set_ticks() takes 2 positional arguments but 3 were given",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m/tmp/ipykernel_1191/146515852.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m     36\u001b[0m ax.imshow(values, interpolation=interpolation, cmap=cmap, aspect=\"auto\",\n\u001b[1;32m     37\u001b[0m           origin=\"lower\", extent=[0, 1, 0, len(values)])\n\u001b[0;32m---> 38\u001b[0;31m \u001b[0max\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mset_yticks\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0.5\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlabels\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;36m0.5\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlabels\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     39\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     40\u001b[0m \u001b[0;31m# Show spectrogram and wavelet packet coefficients\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/usr/local/lib/python3.8/dist-packages/matplotlib/axes/_base.py\u001b[0m in \u001b[0;36mwrapper\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m     71\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     72\u001b[0m         \u001b[0;32mdef\u001b[0m \u001b[0mwrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 73\u001b[0;31m             \u001b[0;32mreturn\u001b[0m \u001b[0mget_method\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     74\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     75\u001b[0m         \u001b[0mwrapper\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__module__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mowner\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__module__\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: set_ticks() takes 2 positional arguments but 3 were given"
     ]
    },
    {
     "data": {
      "image/png": "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iex3C1l0Uhik0PkatJ/+FPjBD2p5lAmdvE4sKCQmdF1dwMEHpwcopERd8vXaKXTyWinf82mnNe7r6gqLnJv3pEnAu94FXHpp7VhqGUN5x663ubGZFrv17LprTej+9a96v38K7D6bMcP+5xksQvCb/6OPxsNppdBVsehirksuM9D48HOEnbTWgJp1KYXODWlnWEhl3nyvHOEK+AcAv+IV9v8FF9Ty+Mxn7DZbyyHXpbzerFn2vJD7R9KMRffQQ8Df/ubP91WvAg491G77QuLbSVkfnc916YqFzMtdhZvzKrPofMT66KSledddwHe+E8+LueEG4Lzzam5rX6P++tfb//yMuddupjH/6EftfzkzS7vEwbXofvSjvPPf+U7gj3/0Hwu9IITuZf16GxU8UFGhK5g6FXjySbtdRegmT7b/777b/k8VOmPi1l+Z0JX10cUsOi5zDLdsLFChQZ++wBOepR7wizofl+dOn26jX6UL+AtfsH2grjuV+/1865vtsYc9L+Ut1hUFd0XrmNDtuKMd2FtGXwjdeec19n+VWXQ5fXQAcPPNtk+Hn78yi84HD3j29RkyuWHsL3sZcMkl8fNPO81a324/E88085a35F1T8vnP23uQIt6uvlif8Fx0Ufr573pXbUkll1yhk8FdO+0EXHhh+LpvfGPjvn/7Nxtx2i5U6AqmTrXDC1atsq5LGciQArvW7r3XCk5KMAqTKnShcXKMT+ikELoNdBWhY0JCJxtyFh4pdNLNyfhWXhg3zj9gX9bB738PfPCDjRZh1TdoV9BY6HL66MqINdz3329fsprlkksaVwYo66MjsqHd22wDfO5z5dc4/HAbpZcajBLiwANtkIML13GKJe6jrI/Pt87kXnvZ8w45pNo1ffjEoVXC58v7c59rfFloFWWuSz7261/HLfBvfKNx3O8vf2kjTttFU310RHQKgIsA7AngAGPMzEC6owF8B8AQAD8xxny1meu2g5e9zP6fPt02zLmdt1ttZYVm1apyaw6odwmmui5969vJB8/XKLzmNbVt90efInSu65KpKnS+aZtY6HyrM8R4wxvsn5t31cGsrqCxZROy6Hbe2faxVsHX0L7yldXyiuG6GN1t6a4bO7ZxcvMyOC/fPKEpQsfuXp45hctz6KHAl78MnHtuXnkYXmeSl+BpJd3d1lX90EO1fT//uV/AXHF45JG0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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#!/usr/bin/env python\n",
    "# -*- coding: utf-8 -*-\n",
    "\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "import pywt\n",
    "\n",
    "\n",
    "x = np.linspace(0, 1, num=512)\n",
    "data = np.sin(250 * np.pi * x**2)\n",
    "\n",
    "wavelet = 'db2'\n",
    "level = 4\n",
    "order = \"freq\"  # other option is \"normal\"\n",
    "interpolation = 'nearest'\n",
    "cmap = plt.cm.cool\n",
    "\n",
    "# Construct wavelet packet\n",
    "wp = pywt.WaveletPacket(data, wavelet, 'symmetric', maxlevel=level)\n",
    "nodes = wp.get_level(level, order=order)\n",
    "labels = [n.path for n in nodes]\n",
    "values = np.array([n.data for n in nodes], 'd')\n",
    "values = abs(values)\n",
    "\n",
    "# Show signal and wavelet packet coefficients\n",
    "fig = plt.figure()\n",
    "fig.subplots_adjust(hspace=0.2, bottom=.03, left=.07, right=.97, top=.92)\n",
    "ax = fig.add_subplot(2, 1, 1)\n",
    "ax.set_title(\"linchirp signal\")\n",
    "ax.plot(x, data, 'b')\n",
    "ax.set_xlim(0, x[-1])\n",
    "\n",
    "ax = fig.add_subplot(2, 1, 2)\n",
    "ax.set_title(\"Wavelet packet coefficients at level %d\" % level)\n",
    "ax.imshow(values, interpolation=interpolation, cmap=cmap, aspect=\"auto\",\n",
    "          origin=\"lower\", extent=[0, 1, 0, len(values)])\n",
    "ax.set_yticks(np.arange(0.5, len(labels) + 0.5), labels)\n",
    "\n",
    "# Show spectrogram and wavelet packet coefficients\n",
    "fig2 = plt.figure()\n",
    "ax2 = fig2.add_subplot(211)\n",
    "ax2.specgram(data, NFFT=64, noverlap=32, Fs=2, cmap=cmap,\n",
    "             interpolation='bilinear')\n",
    "ax2.set_title(\"Spectrogram of signal\")\n",
    "ax3 = fig2.add_subplot(212)\n",
    "ax3.imshow(values, origin='upper', extent=[-1, 1, -1, 1],\n",
    "           interpolation='nearest')\n",
    "ax3.set_title(\"Wavelet packet coefficients\")\n",
    "\n",
    "\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e5a52c3e-5495-4894-b96e-e926c1dfe8b8",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
